function Datepicker(){
	
}
/*
 
*showOn - Cria duas opções para abrir o Calendário, no "button" abre o Calendário ao clicar no Botão, no "both" 
 tanto pelo botão ou ao clicar no campo.
 Exemplo de uso:
  
var json = {showOn: "button"};
calendario."método"("seletor",json);

*onClose - Logo após a seleção da Data, esta função mostra uma mensagem confirmando qual data foi Selecionada.
 Exemplo de uso:
 
 var json = {onClose: function(dateText, inst){
 	          alert('A data selecionada foi: '+dateText);}
  	       };
 	       
 calendario."método"("seletor",json);



*showAnim - Abre o calendário estilo animação abrindo pela lateral, de cima para baixo, vibrando etc. 
Tipos de efeito: Show (default), slideDown, fadeIn, blind(UI Effect), bounce(UI Effect), clip(UI Effect), 
drop(UI Effect), fold(UI Effect), slide(UI Effect), None.
Exemplo de uso:

var json = {showAnim: "fold"};
calendario."método"("seletor",json);

*beforeShowDay - Habilita somente dias úteis, dessa forma o usuário não consegue selecionar para o campo o sábado e domingo.
Exemplo de uso:

var json = {beforeShowDay: $.datepicker.noWeekends};
calendario."método"("seletor",json);

*hideIfNoPrevNext - Elimina as datas anteriores a partir da data atual.
Exemplo de uso:

var json = {hideIfNoPrevNext: true};
calendario."método"("seletor",json);

*maxDate - O usuário habilita a quantidade de dias desejado após a data atual, seja por numérico ou String, 
Exemplo de uso: 

var json = {maxDate: "+1w"}; //Aqui seria a 1 semana, após a data(1 week).
calendario."método"("seletor",json);

*changeMonth - Habilita um seletor de mês onde o usuário tem todos os meses do ano em uma lista.
Exemplo de uso:

var json = {changeMonth: true};
calendario."método"("seletor",json);

*changeYear - Habilita um seletor de ano onde o usuário tem todos os anos do calendário em uma lista.
Exemplo de uso:

var json = {changeYear: true};
calendario."método"("seletor",json);

*showOtherMonths - Mostra os dias do mês anterior e do próximo mês, porém a seleção desses dias não é possível.
Exemplo de uso:

var json = {showOtherMonths: true};
calendario."método"("seletor",json);

*appendText - É mostrado um exemplo na lateral do campo da data, a forma que deve ser prenchido(definido pelo usuário).
Exemplo de uso:

var json = {appendText: Exemplo "(yy-mm-dd)"};
calendario."método"("seletor",json);

*dateFormat - Define a a forma da data que o usuário pretende mostrar, no caso do Brasil utilizamos dd/mm/yyyy.
Exemplo de uso:

var json = {dateFormat: "dd-mm-yyyy"}; 
calendario."método"("seletor",json);

*monthNamesShort - Define os meses do ano de forma abreviada, personalizando de acordo com a necessidade.
Exemplo de uso:

var json = {monthNamesShort: ['bru','ru','alt','bra','Mai','Jun','Jul','Ago','Set','Out','Nov','Dez']};
calendario."método"("seletor",json);

*dayNames - Define os dias da semana ao passar o mouse no dia abreviado.
Exemplo de uso:

var json = {dayNames: ['Somingo','Caiu-feira','Tenta-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sábado']};
calendario."método"("seletor",json);

*dayNamesMin - Define os dias da semana de forma abreviada, personalizando de acordo com a necessidade.
Exemplo de uso:

var json = {dayNamesMin: ['Sun','Seg','Who','Qua','Bla','Sex','Sáb']};
calendario."método"("seletor",json);

METHODS

*setDate - Logo ao abrir a tela, a data já sem setada no campo, com a data atual(HOJE).
Exemplo de uso:

calendario.setDate("seletor");


*show - Logo ao abrir a tela, o method chama o calendário.
*Exemplo de uso:

calendario.show("seletor");

*/


/**
 * DatePicker - Options
 * @param seletor(Caminho do campo a ser executado o DatePicker)
 * @param config(Parâmetro que chama os atributos do DatePicker)
 * 
 *<ul>
 *<li><p><b>showOn</b> - Tipo: "String" - Cria duas opções para abrir o Calendário, no "button" abre o Calendário ao clicar no Botão, no "both" 
 *tanto pelo botão ou ao clicar no campo.</p>
 *<b>Exemplo de uso:</b> 
 *<p>var json = {showOn: "button"};</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>onClose</b> - Tipo: Function( String dateText, Object inst ) - Logo após a seleção da Data, esta função mostra uma mensagem confirmando qual data foi Selecionada.</p>
 *<b>Exemplo de uso:</b>
 *
 *<p>var json = {onClose: function(dateText, inst){
 *	          alert('A data selecionada foi: '+dateText);}
 * 	       };</p>
 *	       
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>showAnim</b> -  Tipo: String - Abre o calendário estilo animação abrindo pela lateral, de cima para baixo, vibrando etc. 
 *Tipos de efeito: Show (default), slideDown, fadeIn, blind(UI Effect), bounce(UI Effect), clip(UI Effect), 
 *drop(UI Effect), fold(UI Effect), slide(UI Effect), None.</p>
 *<b>Exemplo de uso:</b>
 *
 *<p>var json = {showAnim: "fold"};</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>hideIfNoPrevNext</b> - Tipo: Boolean - Elimina as datas anteriores a partir da data atual.</p>
 *<b>Exemplo de uso:</b>
 *
 *<p>var json = {hideIfNoPrevNext: true};</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>maxDate</b> - Tipo: Date, Number ou String - O usuário habilita a quantidade de dias desejado após a data atual, seja por data,numérico ou String.</p>
 *<b>Exemplo de uso: </b>
 *
 *<p>var json = {maxDate: "+1w"}; - Aqui seria 1 semana após a data(+1w = 1 week).</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>changeMonth</b> - Tipo: Boolean - Habilita um seletor de mês onde o usuário tem todos os meses do ano em uma lista.</p>
 *<b>Exemplo de uso:</b>
 *
 *<p>var json = {changeMonth: true};</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>changeYear</b> - Tipo: Boolean - Habilita um seletor de ano onde o usuário tem todos os anos do calendário em uma lista.</p>
 *<b>Exemplo de uso:</b>
 *
 *<p>var json = {changeYear: true};</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>showOtherMonths</b> - Tipo: Boolean - Mostra os dias do mês anterior e do próximo mês, porém a seleção desses dias não é possível.</p>
 *<b>Exemplo de uso:</b>
 *<p>var json = {showOtherMonths: true};</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>appendText</b> - Tipo: String- É mostrado um exemplo na lateral do campo da data, a forma que deve ser prenchido(definido pelo usuário).</p>
 *<b>Exemplo de uso:</b>
 *<p>var json = {appendText: "Exemplo (yy-mm-dd)"};</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>dateFormat</b> Tipo: String - Define a a forma da data que o usuário pretende mostrar, no caso do Brasil utilizamos dd/mm/yy, o que seria o nosso Default.
 *Pode-se definir também por extenso, no caso passando o mês em maiúsculo. Ex: dateFormat: "dd 'de' MM 'de' yy - DD" --> "11 'de' Julho 'de' 2015" </p>
 *<b>Exemplo de uso:</b>
 *<p>var json = {dateFormat: "yy-mm-dd"}; </p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>monthNamesShort</b> Tipo: Array - Define os meses do ano de forma abreviada, personalizando de acordo com a necessidade.</p>
 *<b>Exemplo de uso:</b>
 *<p>var json = {monthNamesShort: ['bru','ru','alt','bra','Mai','Jun','Jul','Ago','Set','Out','Nov','Dez']};</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>dayNames</b> - Tipo: Array - Define os dias da semana ao passar o mouse no dia abreviado.</p>
 *<b>Exemplo de uso:</b>
 *<p>var json = {dayNames: ['Somingo','Caiu-feira','Tenta-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sábado']};</p>
 *<p>calendario."método"("seletor",json);</p>
 *</ul>
 *
 *<ul>
 *<li><p><b>dayNamesMin</b> - Tipo: Array - Define os dias da semana de forma abreviada, personalizando de acordo com a necessidade.</p>
 *<b>Exemplo de uso:</b>
 *<p>var json = {dayNamesMin: ['Sun','Seg','Who','Qua','Bla','Sex','Sáb']};</p>
 *<p>calendario."método"("seletor",json);</p>
 */
Datepicker.prototype.criarCalendario = function(seletor, config){

	var jsonAux = {
			
			dateFormat: "dd/mm/yy",
			closeText: 'Fechar',
			prevText: '&#x3C;Anterior',
			nextText: 'Próximo&#x3E;',
			currentText: 'Hoje',
			monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],
			monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun','Jul','Ago','Set','Out','Nov','Dez'],
			dayNames: ['Domingo','Segunda-feira','Terça-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sábado'],
			dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'],
			dayNamesMin: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'],
			weekHeader: 'Sm'
			
	};
	
	if(config){
		
		jsonAux = $.extend(jsonAux, config);
		
	}
	
	$(seletor).datepicker(jsonAux);
				
};		


Datepicker.prototype.destroy = function(seletor){
	
		$(seletor).datepicker("destroy");
	
};

Datepicker.prototype.refresh = function(seletor){
	
	$(seletor).datepicker("refresh");
	
};	


/**
 * setDate
 * @param seletor
 * 
 * <ul>
 * <li><p><b>setDate<b> Tipo: String ou Date - Logo ao abrir a tela, a data já sem setada no campo, com a data atual(HOJE).</p>
 *<b>Exemplo de uso:</b>
 *<p>calendario.setDate("seletor");</p>
 *</ul>
 *
 */
Datepicker.prototype.setDate = function(seletor){
	
	$(seletor).datepicker("setDate", "today");
	
};

/**
 * show
 * @param seletor
 * 
 *<ul>
 *<li><p><b>show</b> - Logo ao abrir a tela, o method chama o calendário.</p>
 *<b>Exemplo de uso:</b>
 *<p>calendario.show("seletor");</p>
 *</ul>
 */
Datepicker.prototype.show = function(seletor){
	
	$(seletor).datepicker("show");
	
};
	
var datepicker = new Datepicker();